package com.itheima.service.mongo;

import com.itheima.domain.mongo.Movement;
import com.itheima.vo.PageBeanVo;
import org.bson.types.ObjectId;

public interface MovementService {
    // 发布动态
    void save(Movement movement);

    // 查询个人（我的）动态
    PageBeanVo findMyMovementByPage(Long userId, Integer pageNum, Integer pageSize);

    // 查看好友动态
    PageBeanVo findFriendMovementByPage(Long userId, Integer pageNum, Integer pageSize);

    //查询推荐动态
    PageBeanVo findRecommendMovementByPage(Long userId, Integer pageNum, Integer pageSize);

    // 根据主键查询
    Movement findById(ObjectId id);

    //查询动态(userId有可能为空,state有可能为空)
    PageBeanVo findByConditionAndPage(Long userId,Integer state,Integer pageNum,Integer pageSize);

}
